package edu.njust.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.sql.Date;
import java.sql.Time;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class CourseInfo {
    private Long reservationItem_id;
    private Long reservation_id;
    private Integer type;
    private String teacher_name;
    private String course_name;
    private String scheduling_name;

    private Date date;
    private Integer time_num;
    private String room_id;

    private Date begin_date;
    private Date end_date;
    private Integer plan_num;
    private Integer remain_num;

    private Time begin_time;
    private Time end_time;
    private Integer seat_num;

    public CourseInfo(Long reservationItem_id, Long reservation_id, Integer type, String teacher_name, String course_name, String scheduling_name, Date date, Integer time_num, String room_id) {
        this.reservationItem_id = reservationItem_id;
        this.reservation_id = reservation_id;
        this.type = type;
        this.teacher_name = teacher_name;
        this.course_name = course_name;
        this.scheduling_name = scheduling_name;
        this.date = date;
        this.time_num = time_num;
        this.room_id = room_id;
    }

    public CourseInfo(Long reservationItem_id, Long reservation_id, Integer type, String course_name, String scheduling_name, Date date, Integer time_num, String room_id,Integer seat_num) {
        this.reservationItem_id = reservationItem_id;
        this.reservation_id = reservation_id;
        this.type = type;
        this.course_name = course_name;
        this.scheduling_name = scheduling_name;
        this.date = date;
        this.time_num = time_num;
        this.room_id = room_id;
        this.seat_num = seat_num;
    }

    public CourseInfo(Long reservationItem_id, Long reservation_id, Integer type, String scheduling_name, Date begin_date, Date end_date, Integer plan_num, Integer remain_num) {
        this.reservationItem_id = reservationItem_id;
        this.reservation_id = reservation_id;
        this.type = type;
        this.scheduling_name = scheduling_name;
        this.begin_date = begin_date;
        this.end_date = end_date;
        this.plan_num = plan_num;
        this.remain_num = remain_num;
    }

    public CourseInfo(Long reservationItem_id, Long reservation_id, Integer type, String scheduling_name, Date date, String room_id, Time begin_time, Time end_time, Integer seat_num) {
        this.reservationItem_id = reservationItem_id;
        this.reservation_id = reservation_id;
        this.type = type;
        this.scheduling_name = scheduling_name;
        this.date = date;
        this.room_id = room_id;
        this.begin_time = begin_time;
        this.end_time = end_time;
        this.seat_num = seat_num;
    }
}
